//package com.elitel.common.redis.service;
//
//import java.util.List;
//import java.util.Map;
//
//import com.elitel.common.redis.RedisDbIndex;
//
//public interface RedisCacheService {
//
//    /**
//     * 保存
//     *
//     * @param key
//     *            唯一标识
//     * @param value
//     *            数据
//     * @param rdi
//     *            数据库序列
//     */
//    public void saveObject(final String key, final String value,
//            int rdi);
//
//    /***
//     * show 保存redis插入信息
//     * @param key 唯一标识
//     * @param value 数据
//     * @param rdi 数据库序列
//     * @param timeSeconds 过期时间(秒)
//     */
//    public void saveObjectTimeOut(final String key, final String value,
//                                  int rdi, long timeSeconds);
//
//    /**
//     * 获取 根据key（唯一标识）获取数据
//     *
//     * @param key
//     *            唯一标识
//     * @param rdi
//     *            数据库序列
//     * @return String
//     */
//    public String getObject(final String key, int rdi);
//
//    /**
//     * 删除 根据key（唯一标识）删除数据
//     *
//     * @param key
//     *            唯一标识
//     * @param rdi
//     *            数据库序列
//     * @return boolean
//     */
//    public boolean delObject(final String key, int rdi);
//
//    /**
//     * 设定唯一标识和数据的（key，value）过期时间
//     *
//     * @param key
//     *            唯一标识
//     * @param timeMinutes
//     *            分钟
//     * @param rdi
//     *            数据库序列
//     * @return
//     */
//    public boolean setKeyTimeOut(final String key, long timeMinutes,
//            int rdi);
//
//    /**
//     * 保存Hash
//     *
//     * @param ykey
//     *            域（队列，栈）唯一标识
//     * @param key
//     *            唯一标识
//     * @param rdi
//     *            数据库序列
//     * @param value
//     *            数据
//     */
//    public void saveHObject(final String ykey, final String key,
//            final String value, int rdi);
//
//    /**
//     * 获取Hash 获取该栈或队列下的，所有key
//     *
//     * @param ykey
//     * @param key
//     * @param rdi
//     *            数据库序列
//     * @return
//     */
//    public String getHObject(final String ykey, final String key,
//            int rdi);
//
//    /**
//     * 删除Hash 获取该hash域下所有，所有key
//     *
//     * @param ykey
//     * @return
//     */
//    public void delHObject(final String ykey, int rdi);
//
//    /**
//     * 获取该域下（Hash）的所有key
//     *
//     * @param ykey
//     * @param rdi
//     *            数据库序列
//     * @return
//     */
//    public Map<String, String> getHObjectAll(final String ykey,
//            int rdi);
//
//    /**
//     * 入栈 （压栈） 后进先出（从尾部，加入数据）
//     *
//     * @param key
//     * @param value
//     * @param rdi
//     *            数据库序列
//     * @return
//     */
//    public Long push(String key, String value, int rdi);
//
//    /**
//     * 出栈 后进先出（从对尾开始取值，取出后删除）
//     *
//     * @param key
//     *            唯一标识
//     * @param rdi
//     *            数据库序列
//     * @return String
//     */
//    public String pop(String key, int rdi);
//
//    /**
//     * 入队 串行队列，顺序入队（从尾部加入数据）
//     *
//     * @param key
//     *            唯一标识
//     * @param value
//     * @param rdi
//     *            数据库序列
//     * @return
//     */
//    public Long in(String key, String value, int rdi);
//
//    /**
//     * 出队 串行队列先近先出（取出时删除，顺序取出）
//     *
//     * @param key
//     *            唯一标识
//     * @param rdi
//     *            数据库序列
//     * @return String
//     */
//    public String out(String key, int rdi);
//
//    /**
//     * 栈/队列长 获取栈和队列的长度
//     *
//     * @param key
//     *            唯一标识
//     * @param rdi
//     *            数据库序列
//     * @return long
//     */
//    public Long length(String key, int rdi);
//
//    /**
//     * 范围检索 获取一个栈或队列的区间数据
//     *
//     * @param key
//     * @param start
//     *            开始位置
//     * @param end
//     *            结束为止
//     * @param rdi
//     *            数据库序列
//     * @return List<String>
//     */
//    public List<String> range(String key, int start, int end, int rdi);
//
//    /**
//     * 精确删除
//     *
//     * @param key
//     *            队列key或栈key
//     * @param i
//     *            数据位置
//     * @param value
//     * @param rdi
//     *            数据库序列
//     * @return void
//     */
//    public void remove(String key, long i, String value, int rdi);
//
//    /**
//     * 检索 栈或队列中，根据索引取值（位置）
//     *
//     * @param key
//     *            唯一索引
//     * @param index
//     *            数据位置
//     * @param rdi
//     *            数据库序列
//     * @return String
//     */
//    public String index(String key, long index, int rdi);
//
//    /**
//     * 替换指定索引值
//     *
//     * @param key
//     *            唯一标识
//     * @param index
//     *            数据位置
//     * @param rdi
//     *            数据库序列
//     * @param value
//     *            void
//     */
//    public void set(String key, long index, String value, int rdi);
//
//    /**
//     * 裁剪 根据传入的开始位置（start）结束位置（end）删除队列或栈中的数据
//     *
//     * @param key
//     *            栈或队列
//     * @param start
//     *            开始位置
//     * @param end
//     *            结束位置
//     * @param rdi
//     *            数据库序列
//     */
//    public void trim(String key, long start, long end, int rdi);
//
//    /**
//     * 唯一标识（key）是否存在
//     *
//     * @param key
//     *            队列，栈，hash
//     * @param rdi
//     *            数据库序列
//     * @return String
//     */
//    public boolean stringExists(final String key, int rdi);
//
//    /**
//     * //Hash,队列，栈中，是否存在传入的唯一标识（key）
//     *
//     * @param ykey
//     *            队列，栈，hash
//     * @param key
//     *            唯一标识
//     * @param rdi
//     *            数据库序列
//     * @return boolean
//     */
//    public boolean hashExists(final String ykey, String key, int rdi);
//
//    /**
//     * 验证redis的连通性
//     * created by guoyanfei on 2019/07/16
//     * @param redisIp ip地址
//     * @param redisPort 端口号
//     * @return
//     */
//    public boolean connectRedis(String redisIp,int redisPort,String password);
//}
